/************************************************************
	File:		Particle.h
	Author:		Mitchel Mishiev
	Purpose:	CParticle class creates the particles of the Game
************************************************************/

#pragma once
#include "../../SGD Wrappers/CSGD_Direct3D.h"

class CParticle
{
private:
	float CurrLife;
	float EndLife;
	float CurrVelocityX;
	float CurrVelocityY;
	float CurrScaleX;
	float CurrScaleY;
	float CurrRotation;
	float CurrColorAlpha;
	float CurrColorRed;
	float CurrColorGreen;
	float CurrColorBlue;
	float PositionX;
	float PositionY;

public:
	CParticle(void);
	~CParticle(void);
	CParticle& operator=( const CParticle& part);
	CParticle(const CParticle& part);

	//Accessor
	float GetpX() { return PositionX; }
	float GetpY() { return PositionY; }
	float GetColorAlpha() { return CurrColorAlpha; }
	float GetColorRed() { return CurrColorRed; }
	float GetColorGreen() { return CurrColorGreen; }
	float GetColorBlue() { return CurrColorBlue; }
	float GetCurrentLife() { return CurrLife; }
	float GetEndLife() { return EndLife; }
	float GetCurrentVelocityX() { return CurrVelocityX; }
	float GetCurrentVelocityY() { return CurrVelocityY; }
	float GetCurrentScaleX() { return CurrScaleX; }
	float GetCurrentScaleY() { return CurrScaleY; }
	float GetCurrentRotation() { return CurrRotation; }

	//Mutator
	void SetpX( float x ) { PositionX = x; }
	void SetpY( float y ) { PositionY = y; }
	void SetColorAlpha( float alpha ) { CurrColorAlpha = alpha; }
	void SetColorRed( float red ) { CurrColorRed = red; }
	void SetColorGreen( float green ) { CurrColorGreen = green; }
	void SetColorBlue( float blue ) { CurrColorBlue = blue; }
	void SetCurrentLife( float cLife ) { CurrLife = cLife; }
	void SetEndLife( float eLife ) { EndLife = eLife; }
	void SetCurrentVelocityX( float x ) { CurrVelocityX = x; }
	void SetCurrentVelocityY( float y ) { CurrVelocityY = y; }
	void SetCurrentScaleX( float s ) { CurrScaleX = s; }
	void SetCurrentScaleY( float s ) { CurrScaleY = s; }
	void SetCurrentRotation( float r ) { CurrRotation = r; }

};
